home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mission 3
/
Mission 3.zip
/
Mission 3.iso
/
demovers
/
scripter
/
demo
/
sorttest.sic
< prev
next >
Wrap
Text File
|
1998-09-26
|
1KB
|
62 lines
//ACE-SICPAR 8 0045
/*
* Kleiner Test der Sortierfunktion qsort. Es wird ein Array mit 1000
* Einträgen sortiert und die dafür benötigte Zeit ausgegeben.
*/
uses "sort.lib";
proc main(...)
{
/*
* Array mit "zufälligen" Zahlen initialisieren
*/
random_seed = 1;
test.length = 1000;
for(i = 0; i < 1000; ++i) test[i] = rand();
printf("Sortiere...\n");
/*
* Sortieren und die Zeit messen
*/
zeit = clock();
qsort_array(test, compare_ints);
zeit = clock() - zeit;
/*
* Array ausgeben, damit man auch sieht, daß es sortiert ist
*/
for(i = 0; i < 1000; ++i) {
for (j = 0; j < 9; ++j, ++i) printf("%-5d ", test[i]);
printf("\n");
}
/*
* Zum Schluß noch die benötigte Zeit ausgeben
*/
tausendstel = (zeit % 200) * 5;
printf("Zeit: %d.%03d Sekunden\n", zeit / 200, tausendstel);
}
/*
* Vergleich zweier Zahlen für qsort
*/
proc compare_ints(i1, i2)
{
return i1 - i2;
}
/*
* Kleine Zufallszahlenfunktion
*/
proc rand()
local rv;
{
rv = random_seed * 1103515245 + 12345;
random_seed = rv;
rv = (rv / 65536) & 32767;
return rv;
}